package com.ruoyi.merchant.api.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 商户管理对象 merchant
 * 
 * @author ruoyi
 * @date 2025-07-09
 */
public class Merchant extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商家ID */
    private Long mId;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long uId;

    /** 负责人姓名 */
    @Excel(name = "负责人姓名")
    private String contactName;

    /** 身份证号 */
    @Excel(name = "身份证号")
    private String idCard;

    /** 手机号 */
    @Excel(name = "手机号")
    private String phone;

    /** 店名 */
    @Excel(name = "店名")
    private String shopName;

    /** 营业执照号 */
    @Excel(name = "营业执照号")
    private String licenseNum;

    /** 省 */
    @Excel(name = "省")
    private Long provinceId;

    /** 市 */
    @Excel(name = "市")
    private Long cityId;

    /** 区 */
    @Excel(name = "区")
    private Long districtId;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String address;

    /** 商家经度 */
    @Excel(name = "商家经度")
    private Double longitude;

    /** 商家纬度 */
    @Excel(name = "商家纬度")
    private Double latitude;

    /** 营业时间 */
    @Excel(name = "营业时间")
    private String hours;

    /** 注册时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date regTime;

    /** 身份证正反面照片 */
    @Excel(name = "身份证正反面照片")
    private String idCardPhotos;

    /** 营业执照照片 */
    @Excel(name = "营业执照照片")
    private String licensePhoto;

    /** 门面照片 */
    @Excel(name = "门面照片")
    private String storePhoto;

    /** 商家介绍 */
    @Excel(name = "商家介绍")
    private String intro;

    /** 审核状态：0-待审核，1-已通过，2-已拒绝 */
    @Excel(name = "审核状态：0-待审核，1-已通过，2-已拒绝")
    private Long auditStatus;

    /** 逻辑删除：1-已删除，0-未删除 */
    @Excel(name = "逻辑删除：1-已删除，0-未删除")
    private Long isDeleted;

    /** 0暂停营业、1开始营业 */
    @Excel(name = "0暂停营业、1开始营业")
    private Long status;

    public void setmId(Long mId) 
    {
        this.mId = mId;
    }

    public Long getmId() 
    {
        return mId;
    }

    public void setuId(Long uId) 
    {
        this.uId = uId;
    }

    public Long getuId() 
    {
        return uId;
    }

    public void setContactName(String contactName) 
    {
        this.contactName = contactName;
    }

    public String getContactName() 
    {
        return contactName;
    }

    public void setIdCard(String idCard) 
    {
        this.idCard = idCard;
    }

    public String getIdCard() 
    {
        return idCard;
    }

    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }

    public void setShopName(String shopName) 
    {
        this.shopName = shopName;
    }

    public String getShopName() 
    {
        return shopName;
    }

    public void setLicenseNum(String licenseNum) 
    {
        this.licenseNum = licenseNum;
    }

    public String getLicenseNum() 
    {
        return licenseNum;
    }

    public void setProvinceId(Long provinceId) 
    {
        this.provinceId = provinceId;
    }

    public Long getProvinceId() 
    {
        return provinceId;
    }

    public void setCityId(Long cityId) 
    {
        this.cityId = cityId;
    }

    public Long getCityId() 
    {
        return cityId;
    }

    public void setDistrictId(Long districtId) 
    {
        this.districtId = districtId;
    }

    public Long getDistrictId() 
    {
        return districtId;
    }

    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }

    public Double getLongitude() {
        return longitude;
    }

    public void setLongitude(Double longitude) {
        this.longitude = longitude;
    }

    public Double getLatitude() {
        return latitude;
    }

    public void setLatitude(Double latitude) {
        this.latitude = latitude;
    }

    public void setHours(String hours) 
    {
        this.hours = hours;
    }

    public String getHours() 
    {
        return hours;
    }

    public void setRegTime(Date regTime) 
    {
        this.regTime = regTime;
    }

    public Date getRegTime() 
    {
        return regTime;
    }

    public void setIdCardPhotos(String idCardPhotos) 
    {
        this.idCardPhotos = idCardPhotos;
    }

    public String getIdCardPhotos() 
    {
        return idCardPhotos;
    }

    public void setLicensePhoto(String licensePhoto) 
    {
        this.licensePhoto = licensePhoto;
    }

    public String getLicensePhoto() 
    {
        return licensePhoto;
    }

    public void setStorePhoto(String storePhoto) 
    {
        this.storePhoto = storePhoto;
    }

    public String getStorePhoto() 
    {
        return storePhoto;
    }

    public void setIntro(String intro) 
    {
        this.intro = intro;
    }

    public String getIntro() 
    {
        return intro;
    }

    public void setAuditStatus(Long auditStatus) 
    {
        this.auditStatus = auditStatus;
    }

    public Long getAuditStatus() 
    {
        return auditStatus;
    }

    public void setIsDeleted(Long isDeleted) 
    {
        this.isDeleted = isDeleted;
    }

    public Long getIsDeleted() 
    {
        return isDeleted;
    }

    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("mId", getmId())
            .append("uId", getuId())
            .append("contactName", getContactName())
            .append("idCard", getIdCard())
            .append("phone", getPhone())
            .append("shopName", getShopName())
            .append("licenseNum", getLicenseNum())
            .append("provinceId", getProvinceId())
            .append("cityId", getCityId())
            .append("districtId", getDistrictId())
            .append("address", getAddress())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("hours", getHours())
            .append("regTime", getRegTime())
            .append("idCardPhotos", getIdCardPhotos())
            .append("licensePhoto", getLicensePhoto())
            .append("storePhoto", getStorePhoto())
            .append("intro", getIntro())
            .append("auditStatus", getAuditStatus())
            .append("isDeleted", getIsDeleted())
            .append("status", getStatus())
            .toString();
    }
}
